1. Field of the Invention
The present invention relates in general to the field of information handling systems, and more particularly to a system and method for managing bus numbering in computer systems, such as PCI bus numbering.
2. Description of the Related Art
As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally process, compiles, stores and/or communicates information or data for business, personal or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored or communicated, and how quickly and efficiently the information may be processed, stored or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store and communicate information and may include one or more computer systems, data storage systems, and networking systems.
The use of a variety of hardware and software components with information handling systems sometimes leads to difficulty in configuring the systems to operate properly. For instance, a typical computer system may accept a number of cards in slots to provide different functions by interfacing peripheral devices through the cards with the computer system's central processing unit (CPU) over one or more buses. One standard for communication with cards over a bus is the Peripheral Component Interconnect (PCI) standard. A PCI bus allows a variety of peripheral devices to communicate over one or more PCI buses with the CPU, typically through a chipset. For instance, a network interface card (NIC) fits into a slot of the computer system to establish network communications with the CPU through the computer system's chipset. Similarly, an accelerated graphics port (AGP) card fits into an AGP slot to communicate between the CPU and a video display. The use of a standardized bus system provides improved flexibility in the hardware configuration of a computer system, although the greater number of potential hardware components presents some difficulty in ensuring that the type of component used is recognized by the computer system and operated with appropriate software.
One example of the difficulty in configuring a computer system to operate with different hardware and software components over a standardized bus is illustrated by FIG. 1. A CPU 10 interfaces with a chipset 12 through a host bus 14. Chipset 12 facilitates communication over a PCI bus 16 to one or more PCI slots 18 to allow communication between peripheral devices and CPU 10 by inserting the peripheral devices as cards into PCI slots 18. For instance, a NIC card inserted into a PCI slot 18 allows CPU 10 to establish communications over a network. Chipset 12 also facilitates communication over a PCI bus 20 with an AGP slot 22 to support an AGP card 24 for communication between a display 26 and CPU 10. In some cases, such as with Intel Corporation's 815 and 845 models, an integrated video controller 28 is included with chipset 12 to allow separate communication with a display 26 over a display interface.
With some operating systems, such as WINDOWS NT, a computer system using integrated video controller 28 re-numbers the PCI buses when an AGP card 24 is added to AGP slot 22 so that the PCI bus 20 is numbered as the first PCI bus and the PCI bus 16 is changed from being numbered as the first bus to being numbered as the second bus. In this manner, a video display is supported over a PCI bus instead of the integrated video controller. However, such re-numbering of buses typically leads to failure of devices associated with the re-numbered bus, such as the NIC card in the above example since the computer system's operating system is not configured for communicating with the device over the newly assigned bus number. In the case of such a failure, the devices typically must be manually re-configured. Alternatively, with some operating systems, such as WINDOWS XP, plug and play functionality allows recognition of the devices associated with the re-numbered bus but still typically requires re-configuration of the devices associated with the re-numbered bus. With corporate information systems, the addition of new hardware to a set of systems can create substantial management problems as systems need re-configuration to operate with changes to the hardware.